home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-02-10 | 3.8 KB | 85 lines | [TEXT/MPCC] |
- Metrowerks C/C++ PowerPC Compiler Release Notes
- =================================================
-
- Version: 1.0a2
- Date: February 7, 1994
- Author: John McEnerney
-
- This version fixes a few bugs and adds some features that have been requested.
- It includes the following changes from the 1.0d12 version on the CD-ROM:
-
- 1. You can now import XCOFF shared libraries (e.g. Quicktime.xcoff) directly;
- previously, you needed to use the makePEF tool to convert them to PEF format.
-
- When a shared library name is coped into the PEF executable, any extension
- is stripped off, e.g. "Quicktime.xcoff" becomes "Quicktime" which must be
- available at runtime.
-
- 2. "Weak" linking of imports from shared libraries is supported. If the name of
- an imported shared library (PEF or XCOFF) begins with "~" (tilde) then the
- library is not required to be present at runtime. Your program should check
- the existence of the shared library before attempting to call any of its routines.
-
- (The naming convention is a admittedly a hack, but it was a quick & easy way
- to support a needed feature without changing the environment or user interface)
-
- There is currently no mechanism for marking an individual name as "weak".
-
- 3. A linker bug which prevented a C++ program from providing its own operator new()
- wchih supersedes the one in MWCRuntime.lib was fixed.
-
- 4. Some serious register allocation bugs with Global Optimization were fixed. If
- any programs still crash with Global Optimization, please let me know ASAP.
-
- 5. The linker now retains the Finder icon location of an application and link map
- when a program is relinked. Previously, the old files were deleted along with their
- Finder info.
-
- 6. The +=, *=, /= and -= operators no longer give an Internal Compiler Error #6 when
- the rhs is a floating-point type and the lhs is an integer. The PowerPC compiler
- should now pass the ANSI conformance suite completely.
-
- 7. The code generator uses a more optimal ordering of the instructions in the prologue
- and epilogue to avoid some load delays.
-
- 8. Some redundant sign- and zero-extensions have been eliminated in the generated code.
-
- 9. CMPLI and CMPI instructions are now eliminated when comparing with an immediate 0
- following an instruction which has a record (Rc == 1) mode. This optimization
- is only performed if "Peephole Optimization" is selected in the Preferences.
-
- 10. The linker now generates more compact PEF relocations for C++ vtables. This can
- reduce the size of a final application measurably (saves 6K for the Muscle demo).
-
- 11. The code generator now optimizes BRA-BLR and BC-BLR sequences.
-
- 12. C++ pointers-to-members are now implemented. This version should implement the
- C++ language exactly as MW C/C++ 68K 1.0a1, except that inline functions are
- not inlined.
-
- 13. Several instruction scheduling bugs were fixed, and the scheduler was improved.
-
- 14. You can now interrupt the linker with Command-Period.
-
- 15. The Quickdraw globals "qd" are now defined in MWCRuntime.lib. If you are already
- declaring them in your source code, you'll get a non-fatal linker warning.
-
- NOTE: You should replace the older MWCRuntime.o with the new MWCRuntime.lib.
-
- NOTE: This version will cause your Linker preferences to be reset to the factory
- defaults. You should check your Linker preferences when opening a project.
-
- 16. A serious bug that occurred when copying large structs has been fixed; this
- one usually only showed up with Global Optimization on.
-
- 17. Some minor bugs in the PEF container format were fixed. In addition, the linker
- no longer outputs a 'SIZE'(-1) resource for a shared library.
-
- This version is a candidate Alpha. Any serious bugs should be reported ASAP. We
- will arrange to have this version distributed widely if no serious bugs are found.
-
-
- John McEnerney, Metrowerks PowerPC Product Architect
- AppleLink: MCENERNEY
- Internet: johnmce@world.std.com
-